From cf8a0573e592e168bd1623b3d86c9bab0affbb9b Mon Sep 17 00:00:00 2001 From: "kaf24@scramble.cl.cam.ac.uk" Date: Fri, 16 Jan 2004 09:33:42 +0000 Subject: [PATCH] bitkeeper revision 1.677 (4007aff6ocbHN2qLBEXdaX4_p5fayQ) sched.h, entry.S, Rules.mk: Fix compile options to work with older gccs. .del-stdarg.h~1490d2f37a0ea278: Delete: xen/include/stdarg.h --- .rootkeys | 1 - xen/arch/i386/Rules.mk | 3 +- xen/arch/i386/entry.S | 6 +- xen/include/stdarg.h | 138 --------------------------------------- xen/include/xeno/sched.h | 2 +- 5 files changed, 6 insertions(+), 144 deletions(-) delete mode 100644 xen/include/stdarg.h diff --git a/.rootkeys b/.rootkeys index 2ee4664034..bee4577bcb 100644 --- a/.rootkeys +++ b/.rootkeys @@ -404,7 +404,6 @@ 3ddb79c4R4iVwqIIeychVQYmIH4FUg xen/include/scsi/scsi_ioctl.h 3ddb79c4yw_mfd4Uikn3v_IOPRpa1Q xen/include/scsi/scsicam.h 3ddb79c4HKPMLvDBP9LxzPi_szVxGA xen/include/scsi/sg.h -3e450943xQztorJxTGW3BPZ4LhRHbw xen/include/stdarg.h 3e397e66m2tO3s-J8Jnr7Ws_tGoPTg xen/include/xeno/ac_timer.h 3ddb79c0nTsjSpVK4ZVTI9WwN24xtQ xen/include/xeno/blk.h 3ddb79c0dVhTHLsv6CPTf4baKix4mA xen/include/xeno/blkdev.h diff --git a/xen/arch/i386/Rules.mk b/xen/arch/i386/Rules.mk index e137a1abd3..2f57ce536e 100644 --- a/xen/arch/i386/Rules.mk +++ b/xen/arch/i386/Rules.mk @@ -7,7 +7,8 @@ LD := ld MONITOR_BASE := 0xFC500000 # Bootloader should load monitor to this real address LOAD_BASE := 0x00100000 -CFLAGS := -nostdinc -fno-builtin -O3 -Wall -DMONITOR_BASE=$(MONITOR_BASE) +CFLAGS := -nostdinc -fno-builtin -fno-common -fno-strict-aliasing +CFLAGS += -iwithprefix include -O3 -Wall -DMONITOR_BASE=$(MONITOR_BASE) CFLAGS += -fomit-frame-pointer -I$(BASEDIR)/include -D__KERNEL__ -DNDEBUG #CFLAGS += -fomit-frame-pointer -I$(BASEDIR)/include -D__KERNEL__ LDFLAGS := -T xeno.lds -N diff --git a/xen/arch/i386/entry.S b/xen/arch/i386/entry.S index dc55e35041..7ff44fd3e5 100644 --- a/xen/arch/i386/entry.S +++ b/xen/arch/i386/entry.S @@ -641,11 +641,11 @@ ENTRY(nmi) jne nmi_io_err movl %eax,%ebx - # Okay, it's almost a normal NMI tick. We can only process it if: - # 1. We're the outermost Xen activation (in which case we have + # Okay, its almost a normal NMI tick. We can only process it if: + # 1. We are the outermost Xen activation (in which case we have # the selectors safely saved on our stack) # 2. DS-GS all contain sane Xen values. - # In all other cases we bail without touching DS-GS, as we've + # In all other cases we bail without touching DS-GS, as we have # interrupted an enclosing Xen activation in tricky prologue or # epilogue code. movb CS(%esp),%al diff --git a/xen/include/stdarg.h b/xen/include/stdarg.h deleted file mode 100644 index 9f6215d31f..0000000000 --- a/xen/include/stdarg.h +++ /dev/null @@ -1,138 +0,0 @@ -/* Copyright (C) 1989, 1997, 1998, 1999, 2000 Free Software Foundation, Inc. - -This file is part of GNU CC. - -GNU CC is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2, or (at your option) -any later version. - -GNU CC is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with GNU CC; see the file COPYING. If not, write to -the Free Software Foundation, 59 Temple Place - Suite 330, -Boston, MA 02111-1307, USA. */ - -/* As a special exception, if you include this header file into source - files compiled by GCC, this header file does not by itself cause - the resulting executable to be covered by the GNU General Public - License. This exception does not however invalidate any other - reasons why the executable file might be covered by the GNU General - Public License. */ - -/* - * ISO C Standard: 7.15 Variable arguments - */ - -#ifndef _STDARG_H -#ifndef _ANSI_STDARG_H_ -#ifndef __need___va_list -#define _STDARG_H -#define _ANSI_STDARG_H_ -#endif /* not __need___va_list */ -#undef __need___va_list - -/* Define __gnuc_va_list. */ - -#ifndef __GNUC_VA_LIST -#define __GNUC_VA_LIST -typedef __builtin_va_list __gnuc_va_list; -#endif - -/* Define the standard macros for the user, - if this invocation was from the user program. */ -#ifdef _STDARG_H - -/* Note that the type used in va_arg is supposed to match the - actual type **after default promotions**. - Thus, va_arg (..., short) is not valid. */ - -#define va_start(v,l) __builtin_stdarg_start((v),l) -#define va_end __builtin_va_end -#define va_arg __builtin_va_arg -#if !defined(__STRICT_ANSI__) || __STDC_VERSION__ + 0 >= 199900L -#define va_copy(d,s) __builtin_va_copy((d),(s)) -#endif -#define __va_copy(d,s) __builtin_va_copy((d),(s)) - - -/* Define va_list, if desired, from __gnuc_va_list. */ -/* We deliberately do not define va_list when called from - stdio.h, because ANSI C says that stdio.h is not supposed to define - va_list. stdio.h needs to have access to that data type, - but must not use that name. It should use the name __gnuc_va_list, - which is safe because it is reserved for the implementation. */ - -#ifdef _HIDDEN_VA_LIST /* On OSF1, this means varargs.h is "half-loaded". */ -#undef _VA_LIST -#endif - -#ifdef _BSD_VA_LIST -#undef _BSD_VA_LIST -#endif - -#if defined(__svr4__) || (defined(_SCO_DS) && !defined(__VA_LIST)) -/* SVR4.2 uses _VA_LIST for an internal alias for va_list, - so we must avoid testing it and setting it here. - SVR4 uses _VA_LIST as a flag in stdarg.h, but we should - have no conflict with that. */ -#ifndef _VA_LIST_ -#define _VA_LIST_ -#ifdef __i860__ -#ifndef _VA_LIST -#define _VA_LIST va_list -#endif -#endif /* __i860__ */ -typedef __gnuc_va_list va_list; -#ifdef _SCO_DS -#define __VA_LIST -#endif -#endif /* _VA_LIST_ */ -#else /* not __svr4__ || _SCO_DS */ - -/* The macro _VA_LIST_ is the same thing used by this file in Ultrix. - But on BSD NET2 we must not test or define or undef it. - (Note that the comments in NET 2's ansi.h - are incorrect for _VA_LIST_--see stdio.h!) */ -#if !defined (_VA_LIST_) || defined (__BSD_NET2__) || defined (____386BSD____) || defined (__bsdi__) || defined (__sequent__) || defined (__FreeBSD__) || defined(WINNT) -/* The macro _VA_LIST_DEFINED is used in Windows NT 3.5 */ -#ifndef _VA_LIST_DEFINED -/* The macro _VA_LIST is used in SCO Unix 3.2. */ -#ifndef _VA_LIST -/* The macro _VA_LIST_T_H is used in the Bull dpx2 */ -#ifndef _VA_LIST_T_H -/* The macro __va_list__ is used by BeOS. */ -#ifndef __va_list__ -typedef __gnuc_va_list va_list; -#endif /* not __va_list__ */ -#endif /* not _VA_LIST_T_H */ -#endif /* not _VA_LIST */ -#endif /* not _VA_LIST_DEFINED */ -#if !(defined (__BSD_NET2__) || defined (____386BSD____) || defined (__bsdi__) || defined (__sequent__) || defined (__FreeBSD__)) -#define _VA_LIST_ -#endif -#ifndef _VA_LIST -#define _VA_LIST -#endif -#ifndef _VA_LIST_DEFINED -#define _VA_LIST_DEFINED -#endif -#ifndef _VA_LIST_T_H -#define _VA_LIST_T_H -#endif -#ifndef __va_list__ -#define __va_list__ -#endif - -#endif /* not _VA_LIST_, except on certain systems */ - -#endif /* not __svr4__ */ - -#endif /* _STDARG_H */ - -#endif /* not _ANSI_STDARG_H_ */ -#endif /* not _STDARG_H */ diff --git a/xen/include/xeno/sched.h b/xen/include/xeno/sched.h index 22a446c798..e99bd5786d 100644 --- a/xen/include/xeno/sched.h +++ b/xen/include/xeno/sched.h @@ -286,7 +286,7 @@ void continue_nonidle_task(void); /* This hash table is protected by the tasklist_lock. */ #define TASK_HASH_SIZE 256 #define TASK_HASH(_id) ((_id)&(TASK_HASH_SIZE-1)) -struct task_struct *task_hash[TASK_HASH_SIZE]; +extern struct task_struct *task_hash[TASK_HASH_SIZE]; #define REMOVE_LINKS(p) do { \ (p)->next_task->prev_task = (p)->prev_task; \ -- 2.30.2